iT邦幫忙

2022 iThome 鐵人賽

DAY 9
0
自我挑戰組

從零開始的工程師轉職之路.新手學Ruby / Ruby on Rails遇到的問題系列 第 9

Day09-[Ruby]原來可以這樣寫?幾個簡單例子看到Ruby的簡潔美麗(part I)

  • 分享至 

  • xImage
  •  

Day09-[Ruby]原來可以這樣寫?幾個簡單例子看到Ruby的簡潔美麗(part I)

在這幾天的線上課程,
我發現了很多ruby直觀、簡潔、美麗的地方,
下面舉例幾個簡單的例子,
讓大家一起領略紅寶石的美。

將 x 和 y 的值互換

這個簡單的題目,
你可以先自己想,
再看看我的思路,
最後再看看老師怎麼利用Ruby寫出。
x = 2, y = 3來看

x = 2
y = 3

x = [x, y]
y = x[0]
x = x[1]

p x
p y

我是想變數可以塞成陣列,
再分別提取,
其實現在看看真的滿累贅的。
來看看可以怎麼做更好:

x = 2
y = 3

x, y = y, x

p x
p y

在Ruby的世界,
可以一次處理兩個變數。

印出順序+名稱

1.a
2.b
3.c
4.d

如果想有這樣的效果
我們可以用迭代的方法

x = 1
names = %w[a b c d]

names.each do |name|
  puts "#{x}.#{name} "
  x += 1
end

想要更簡略嗎?當然可以。
還記得Ruby可以一次處理兩個變數嗎?
我們可以這樣寫:

names = %w[a b c d]

names.each.with_index do |name, x|
  puts "#{x + 1}.#{name}"
end

也會有同樣的效果喔!

tags: Ruby

上一篇
Day08-[Ruby]差一點就差很大.print puts p 的差別(part II)
下一篇
Day10-[Ruby]原來可以這樣寫?幾個簡單例子看到Ruby的簡潔美麗(part II)
系列文
從零開始的工程師轉職之路.新手學Ruby / Ruby on Rails遇到的問題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言